<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>documentName</title>
    <link rel="stylesheet" href="" />
    <style>
      body {
        height: 2000px;
      }

      .go_top {
        display: none;
        position: fixed;
        bottom: 20px;
        right: 20px;
        cursor: pointer;
      }
    </style>
  </head>
  <body>
    <div class="go_top">回到顶部</div>

    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
    <script>
      $(() => {
        // 4 优化：向下滚动后才显示按钮

        $(document).on('scroll', function () {
          if ($('html').scrollTop() > 40) {
            $('.go_top').show()
          } else {
            $('.go_top').hide()
          }
        })

        $('.go_top').click(function () {
          // 1 原理：将 html, body 的 scrollTop值设置为 0px
          // 2 html, body 为选择器，同时查找 html, body 的元素；
          // 3 动画速度设置为 800ms
          $('html, body').animate({ scrollTop: '0px' }, 800)
          // 5 动画会触发 document 的 scroll 事件
        })
      })
    </script>
  </body>
</html>
